统一(简单)专题图 Sample详情
最后更新时间:2019年7月5日
统一专题图采用单一符号信息配置图层中的所有图元,主要用于强调数据的分布特征。
1
MGSMap *map=[mapView map]; MGSVectorLayer *layer=(MGSVectorLayer *)[map getLayerAtIndex:i];
2
根据当前图层类型创建相应几何图形信息(GeomInfo-基类),在此以区图层为例。
//创建区几何图形信息对象 MGSRegInfo *regInfo=[[MGSRegInfo alloc] init]; [regInfo setFillClr:(int)(1 + (arc4random() % (1500 - 1 + 1)))]; //设置填充颜色(参考当前使用的MapGIS颜色库颜色编号)
3
创建统一专题图绘制信息对象(MGSThemeInfo),调用专题图信息对象的setGeoInfo方法设置图形信息,同时设置其专题图名称、是否显示、最大最小显示比等参数。
//创建简单专题图绘制信息对象 MGSThemeInfo *simpleThemeInfo=[[MGSThemeInfo alloc] init]; [simpleThemeInfo setGeoInfo:pntInfo]; //为专题图绘制信息对象设置图形信息 [simpleThemeInfo setMaxScale:0]; //最大显示比 [simpleThemeInfo setMinScale:0]; //最小显示比 [simpleThemeInfo setIsVisible:YES]; //可见性
4
创建简单专题图对象(MGSSimpleTheme),调用其setThemeInfo方法设置专题图信息,同时设置专题图的名称、可见性等信息。
//创建简单专题图对象 MGSSimpleTheme *simpleTheme=[[MGSSimpleTheme alloc] init]; [simpleTheme setThemeInfo:simpleThemeInfo]; //设置简单专题图的绘制信息 [simpleTheme setName:@"统一专题图"]; //名称 [simpleTheme setVisible:YES]; //可见性
5
获取专题图集合MGSThems,调用其append方法添加专题图。
//将专题图添加到对应矢量图层上 [[mapLayer themes] append:simpleTheme]; [mapView forceRefresh]; //刷新地图视图
统一专题图实现效果如下图所示: